import axios from "axios"
import qs from 'qs'
import router from "@/router"
export const baseURL = 'http://localhost:3500'

const instance=axios.create({
    baseURL: baseURL
})  // instance 是 axios 实例
// 封装请求拦截器,在发请求之前携带 token 一起发送;
// 在上方创建的 instance 对象发送请求时,都会先执行下方的拦截器;
//  config 对象封装了请求数据包,把token绑定到请求消息头中 
import store from '../store/index'
instance.interceptors.request.use(
   (config) => {
    config.headers.token = store.state.cyssToken
    return config
   },
   (error) => {
    return Promise.reject(error)
   }
)
instance.interceptors.response.use(
    (response) => {
        // 从相应结果中取出字符串；服务器设置暴露；保存之前进行判断
        console.log(response.headers.cyssToken);
        if (response.headers.token) {
            localStorage.setItem('token',response.headers.cyssToken)
        }
        // if(response.code === 501) {
        //     router.replace(`/login?redirect=${router.currentRoute.fullPath}`)
        // }
        return response
    },
    (error) => {
        
        return Promise.reject(error)
    }
)
// const myaxios={
//     get(url,params){
//        return instance({
//             url,method:'get',params
//         })
//     },
//     /**
//      * post 请求
//      * @param {*} url 
//      * @param {*} params 
//      * @returns Promise
//      */
//     post(url,params){
//         return instance({
//             url,method:'post',data:qs.stringify(params)
//         })
//     },

// }

export default instance 